!

Any line beginning with the so-called bang operator `!' will execute the system command line with a Bourne shell. Aliased commands as found in your interactive C-shell do not hold any more. For example, commands like !rm will not be interactive (i.e. /bin/rm -i) even if you have such an alias in your .cshrc file. Be careful! A nice turnaround is to alias rm to `! rm -i' in your .fudgitrc file and to use the rm command directly from 's shell.

When used in a macro name or an alias name, the `!' character has still another meaning. This tells the parser that characters following the `!' are optional. Therefore, if one types the following, interactively, (see NOTE)

     set noexpand
     alias da!te !date
     set expand
then the parser will recognize da, dat and date as all synonymous to the system command ! date run through a Bourne shell.

NOTE: In interactive mode, the history functions will try to interpret a history substitution if the `!' is not followed by a space. See the appendices. To avoid that the line be scanned for a history event designator, use the set noexpand command. In some cases, it might be simpler to use the system command.

!command

! mail

alias, ls, vi, foreach, system, set expand